package cn.csc.module.distribute.controller.app.distributor.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;

/**
 * 推广员申请请求参数
 * @author liuchuang
 * @version 1.0
 * @modify
 * @since 2025/4/22 11:18
 */
@Setter
@Getter
@ToString
public class AppDistributorCreateReqVO {

    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名")
    @NotEmpty(message = "姓名不能为空")
    private String name;

    /**
     * 手机号
     */
    @ApiModelProperty(value = "手机号")
    @NotBlank(message = "手机号不能为空")
    @Pattern(regexp = "^1[3-9]\\d{9}$", message = "手机号格式错误")
    private String mobile;

    /**
     * 证件类型：1 身份证，2 军官证，3 护照, 默认1
     */
    @ApiModelProperty(value = "证件类型：1 身份证，2 军官证，3 护照", required = true)
    private Byte idCardType = 1;

    /**
     * 证件号
     */
    @ApiModelProperty(value = "证件号", required = true)
    @NotNull(message = "证件号不能为空")
    private String idCardNo;

    /**
     * 推广区域(省,市,县)
     */
    @ApiModelProperty(value = "推广区域(省,市,县)")
    @NotEmpty(message = "推广区域不能为空")
    private String distributeArea;

    /**
     * 推广区域(省,市,县ID)
     */
    @ApiModelProperty(value = "推广区域(省,市,县ID)")
    @NotEmpty(message = "推广区域ID不能为空")
    private String distributeAreaId;

    /**
     * 微信二维码URL
     */
    @ApiModelProperty(value = "微信二维码")
    @NotEmpty(message = "微信二维码不能为空")
    private String wxCode;


}
